package com.rightsidetech.trade.entity;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * td_integral_order
 * @author
 */
public class TdIntegralOrder implements Serializable {
    /**
     * 主键
     */
    private Long id;

    /**
     * 订单号
     */
    private String orderNo;

    /**
     * 门店名称
     */
    private String storeName;

    /**
     * 门店id
     */
    private Long storeInfoId;

    /**
     * 联系人
     */
    private String contact;

    /**
     * 手机号
     */
    private String connectWay;

    /**
     * 所属代理商
     */
    private String agentName;

    /**
     * 所属代理商id
     */
    private Long agentInfoId;

    /**
     * 所属大区
     */
    private String areaName;

    /**
     * 支付积分
     */
    private BigDecimal price;

    /**
     * 商品id
     */
    private Long integralCommodityId;

    /**
     * 商品名称
     */
    private String integralCommodityName;

    /**
     * 商品规格
     */
    private String integralCommoditySpecs;

    /**
     * 商品划线价
     */
    private BigDecimal underlinedPrice;

    /**
     * 商品数量
     */
    private Integer num;

    /**
     * 商品图片
     */
    private String cover;

    /**
     * 地址
     */
    private String address;

    /**
     * 地址id
     */
    private Long addressId;

    /**
     * 订单状态 0-未付款 1-付款
     */
    private Byte status;

    /**
     * 下单时间
     */
    private Date createdAt;

    /**
     * 物流单号
     */
    private String logisticsOrderNo;

    /**
     * 大区id
     */
    private Long areaId;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getOrderNo() {
        return orderNo;
    }

    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    public String getStoreName() {
        return storeName;
    }

    public void setStoreName(String storeName) {
        this.storeName = storeName;
    }

    public Long getStoreInfoId() {
        return storeInfoId;
    }

    public void setStoreInfoId(Long storeInfoId) {
        this.storeInfoId = storeInfoId;
    }

    public String getContact() {
        return contact;
    }

    public void setContact(String contact) {
        this.contact = contact;
    }

    public String getConnectWay() {
        return connectWay;
    }

    public void setConnectWay(String connectWay) {
        this.connectWay = connectWay;
    }

    public String getAgentName() {
        return agentName;
    }

    public void setAgentName(String agentName) {
        this.agentName = agentName;
    }

    public Long getAgentInfoId() {
        return agentInfoId;
    }

    public void setAgentInfoId(Long agentInfoId) {
        this.agentInfoId = agentInfoId;
    }

    public String getAreaName() {
        return areaName;
    }

    public void setAreaName(String areaName) {
        this.areaName = areaName;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Long getIntegralCommodityId() {
        return integralCommodityId;
    }

    public void setIntegralCommodityId(Long integralCommodityId) {
        this.integralCommodityId = integralCommodityId;
    }

    public String getIntegralCommodityName() {
        return integralCommodityName;
    }

    public void setIntegralCommodityName(String integralCommodityName) {
        this.integralCommodityName = integralCommodityName;
    }

    public String getIntegralCommoditySpecs() {
        return integralCommoditySpecs;
    }

    public void setIntegralCommoditySpecs(String integralCommoditySpecs) {
        this.integralCommoditySpecs = integralCommoditySpecs;
    }

    public BigDecimal getUnderlinedPrice() {
        return underlinedPrice;
    }

    public void setUnderlinedPrice(BigDecimal underlinedPrice) {
        this.underlinedPrice = underlinedPrice;
    }

    public Integer getNum() {
        return num;
    }

    public void setNum(Integer num) {
        this.num = num;
    }

    public String getCover() {
        return cover;
    }

    public void setCover(String cover) {
        this.cover = cover;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public Long getAddressId() {
        return addressId;
    }

    public void setAddressId(Long addressId) {
        this.addressId = addressId;
    }

    public Byte getStatus() {
        return status;
    }

    public void setStatus(Byte status) {
        this.status = status;
    }

    public Date getCreatedAt() {
        return createdAt;
    }

    public void setCreatedAt(Date createdAt) {
        this.createdAt = createdAt;
    }

    public String getLogisticsOrderNo() {
        return logisticsOrderNo;
    }

    public void setLogisticsOrderNo(String logisticsOrderNo) {
        this.logisticsOrderNo = logisticsOrderNo;
    }

    public Long getAreaId() {
        return areaId;
    }

    public void setAreaId(Long areaId) {
        this.areaId = areaId;
    }

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        TdIntegralOrder other = (TdIntegralOrder) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
                && (this.getOrderNo() == null ? other.getOrderNo() == null : this.getOrderNo().equals(other.getOrderNo()))
                && (this.getStoreName() == null ? other.getStoreName() == null : this.getStoreName().equals(other.getStoreName()))
                && (this.getStoreInfoId() == null ? other.getStoreInfoId() == null : this.getStoreInfoId().equals(other.getStoreInfoId()))
                && (this.getContact() == null ? other.getContact() == null : this.getContact().equals(other.getContact()))
                && (this.getConnectWay() == null ? other.getConnectWay() == null : this.getConnectWay().equals(other.getConnectWay()))
                && (this.getAgentName() == null ? other.getAgentName() == null : this.getAgentName().equals(other.getAgentName()))
                && (this.getAgentInfoId() == null ? other.getAgentInfoId() == null : this.getAgentInfoId().equals(other.getAgentInfoId()))
                && (this.getAreaName() == null ? other.getAreaName() == null : this.getAreaName().equals(other.getAreaName()))
                && (this.getPrice() == null ? other.getPrice() == null : this.getPrice().equals(other.getPrice()))
                && (this.getIntegralCommodityId() == null ? other.getIntegralCommodityId() == null : this.getIntegralCommodityId().equals(other.getIntegralCommodityId()))
                && (this.getIntegralCommodityName() == null ? other.getIntegralCommodityName() == null : this.getIntegralCommodityName().equals(other.getIntegralCommodityName()))
                && (this.getIntegralCommoditySpecs() == null ? other.getIntegralCommoditySpecs() == null : this.getIntegralCommoditySpecs().equals(other.getIntegralCommoditySpecs()))
                && (this.getUnderlinedPrice() == null ? other.getUnderlinedPrice() == null : this.getUnderlinedPrice().equals(other.getUnderlinedPrice()))
                && (this.getNum() == null ? other.getNum() == null : this.getNum().equals(other.getNum()))
                && (this.getCover() == null ? other.getCover() == null : this.getCover().equals(other.getCover()))
                && (this.getAddress() == null ? other.getAddress() == null : this.getAddress().equals(other.getAddress()))
                && (this.getAddressId() == null ? other.getAddressId() == null : this.getAddressId().equals(other.getAddressId()))
                && (this.getStatus() == null ? other.getStatus() == null : this.getStatus().equals(other.getStatus()))
                && (this.getCreatedAt() == null ? other.getCreatedAt() == null : this.getCreatedAt().equals(other.getCreatedAt()))
                && (this.getLogisticsOrderNo() == null ? other.getLogisticsOrderNo() == null : this.getLogisticsOrderNo().equals(other.getLogisticsOrderNo()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getOrderNo() == null) ? 0 : getOrderNo().hashCode());
        result = prime * result + ((getStoreName() == null) ? 0 : getStoreName().hashCode());
        result = prime * result + ((getStoreInfoId() == null) ? 0 : getStoreInfoId().hashCode());
        result = prime * result + ((getContact() == null) ? 0 : getContact().hashCode());
        result = prime * result + ((getConnectWay() == null) ? 0 : getConnectWay().hashCode());
        result = prime * result + ((getAgentName() == null) ? 0 : getAgentName().hashCode());
        result = prime * result + ((getAgentInfoId() == null) ? 0 : getAgentInfoId().hashCode());
        result = prime * result + ((getAreaName() == null) ? 0 : getAreaName().hashCode());
        result = prime * result + ((getPrice() == null) ? 0 : getPrice().hashCode());
        result = prime * result + ((getIntegralCommodityId() == null) ? 0 : getIntegralCommodityId().hashCode());
        result = prime * result + ((getIntegralCommodityName() == null) ? 0 : getIntegralCommodityName().hashCode());
        result = prime * result + ((getIntegralCommoditySpecs() == null) ? 0 : getIntegralCommoditySpecs().hashCode());
        result = prime * result + ((getUnderlinedPrice() == null) ? 0 : getUnderlinedPrice().hashCode());
        result = prime * result + ((getNum() == null) ? 0 : getNum().hashCode());
        result = prime * result + ((getCover() == null) ? 0 : getCover().hashCode());
        result = prime * result + ((getAddress() == null) ? 0 : getAddress().hashCode());
        result = prime * result + ((getAddressId() == null) ? 0 : getAddressId().hashCode());
        result = prime * result + ((getStatus() == null) ? 0 : getStatus().hashCode());
        result = prime * result + ((getCreatedAt() == null) ? 0 : getCreatedAt().hashCode());
        result = prime * result + ((getLogisticsOrderNo() == null) ? 0 : getLogisticsOrderNo().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", orderNo=").append(orderNo);
        sb.append(", storeName=").append(storeName);
        sb.append(", storeInfoId=").append(storeInfoId);
        sb.append(", contact=").append(contact);
        sb.append(", connectWay=").append(connectWay);
        sb.append(", agentName=").append(agentName);
        sb.append(", agentInfoId=").append(agentInfoId);
        sb.append(", areaName=").append(areaName);
        sb.append(", price=").append(price);
        sb.append(", integralCommodityId=").append(integralCommodityId);
        sb.append(", integralCommodityName=").append(integralCommodityName);
        sb.append(", integralCommoditySpecs=").append(integralCommoditySpecs);
        sb.append(", underlinedPrice=").append(underlinedPrice);
        sb.append(", num=").append(num);
        sb.append(", cover=").append(cover);
        sb.append(", address=").append(address);
        sb.append(", addressId=").append(addressId);
        sb.append(", status=").append(status);
        sb.append(", createdAt=").append(createdAt);
        sb.append(", logisticsOrderNo=").append(logisticsOrderNo);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}